import { IPSDEDataExportItem } from './ipsdedata-export-item';
import { IPSSysPFPlugin } from '../../res/ipssys-pfplugin';
import { IPSModelObject } from '../../ipsmodel-object';

/**
 *
 * @export
 * @interface IPSDEDataExport
 */
export interface IPSDEDataExport extends IPSModelObject {
  /**
   * 代码标识
   * @type {string}
   */
  codeName: string;

  /**
   * 导入标记
   * @type {string}
   */
  expTag: string;

  /**
   * 导入标记2
   * @type {string}
   */
  expTag2: string;

  /**
   * 最大记录数
   * @type {number}
   */
  maxRowCount: number;

  /**
   * 导出项集合
   *
   * @type {IPSDEDataExportItem[]}
   */
  getPSDEDataExportItems(): IPSDEDataExportItem[] | null;

  findPSDEDataExportItem(objKey: any): IPSDEDataExportItem | null;

  /**
   * 前端扩展插件
   *
   * @type {IPSSysPFPlugin}
   */
  getPSSysPFPlugin(): IPSSysPFPlugin | null;

  /**
   * 默认导出
   * @type {boolean}
   * @default false
   */
  defaultMode: boolean;

  /**
   * 支持后台执行
   * @type {boolean}
   */
  enableBackend: boolean;

  /**
   * 支持自定义
   * @type {boolean}
   * @default false
   */
  enableCustomized: boolean;

  /**
   * 支持前台执行
   * @type {boolean}
   */
  enableFront: boolean;
}
